package com.gxa.learning.core.common;

/**
 * 这是一个列举异常信息的枚举类
 *
 * @author YXQ
 * @date 2021/10/25 20:31
 */
public enum ExceptionCode {
    /**
     * 服务器开小差了，请稍后再试
     */
    SERVICE_ERROR("服务器开小差了，请稍后再试", 1001),
    WRONG_REQUIRED("必填项没有填写完全", 1002),
    WRONG_DATA("没有数据", 1003),
    WRONG_UPLOAD("修改失败", 1004),
    NO_QUESTION("题库没有题目", 1005),
    WRONG_DELETE("删除失败", 1006),
    HAS_PHONE("该手机号已经被注册过", 1007),
    WRONG_EMAIL("邮箱填写格式错误", 1008),
    WRONG_PHONE("手机号填写格式错误", 1009),
    /**
     * 参数不正确，请重试
     */
    ARGUMENTS_ERROR("参数不正确，请重试", 3001),
    /**
     * 参数不能为空，请重试
     */
    ARGUMENTS_NOT_NULL("参数不能为空，请重试", 3002),
    /**
     * 上传失败,请重试
     */
    UPLOAD_FALSE("上传失败,请重试", 3003),
    /**
     * 有ID不存在,请检查后再试
     */
    NO_ID_ERROR("有ID不存在,请检查后再试", 3004),
    /**
     * 传递的菜单ID有误,请重试
     */
    NOT_ID_ERROR("传递的菜单ID有误,请重试", 3005),
    /**
     * 格式异常,请重试
     */
    FORMAT_EXCEPTION("格式异常,请重试", 3006),
    /**
     * 分页条件异常,请检查后重试
     */
    PAGE_SIZE_ERROR("分页条件异常,请检查后重试", 3006),
    /**
     * 单次延长时间不能大于3天.请检查后再试
     */
    TIME_ERROR("延长时间不能大于3天.请检查后再试", 3007),
    /**
     *
     */
    TIME_ERRORS("流程节点时长不能大于3天.请检查后再试", 3008),
    /**
     * 流程节点数不能大于5.请检查后再试
     */
    FLOW_PATH_NODE_ERROR("流程节点数不能大于5.请检查后再试", 3008),
    /**
     * 意见征询节点不能多余流程节点,请检查后再试
     */
    EXAMINE_APPROVAL_OPINION_ERROR("意见征询节点不能多余流程节点,请检查后再试", 3008),


    TYPE_LEVEL_EXIST("已经存在该类别等级,请检查后重试", 3006),
    FAILED_OPTION("操作失败，请稍后重试", 2001),
    NO_SUCH_OBJ("找不到要操作的对象，请稍后重试", 2002),
    HAS_SAME_COURSE("这个课程已经存在了", 2003),
    NO_CHOOSE_COURSE("没有可以选择的课程了，请稍后再试哟", 2004),
    HAS_SUCH_PROJECT("你已经申请过这个培训项目了", 2005),
    WRONG_PROJECT("这个培训项目存在问题，请联系管理员", 2006),
    WRONG_OPTION("非法的操作，请稍后重试", 2007),
    INVALID_OPERATION("无效的操作，请稍后重试", 2008),
    HAS_SAME_SIGN("你已经发起签到了，请签到停止后再次发起签到", 2009),
    HAS_NO_STUDENTS("你还没有学员在课程里面哟,先去邀请学员加入叭", 2010),
    IS_NOT_A_STUDENT("你还不是这个培训项目的学员，请先加入", 2011),
    NO_SIGN_IN("老师还没有发起签到，稍后再来哟", 2012),
    HAD_SIGN_IN("你已经签过到了，请不要重复操作", 2013),
    TIME_OUT_OF_PROJECT("当前项目没有在时间内，请联系管理员", 2014),
    ID_WRONG("无对应资料,请确认后重试", 5001),
    PROJECT_FIND_WRONG("请确认查询项目", 5003),
    REPEAT_COST_WRONG("该成本项已经存在,请修改对应成本项", 5002),
    INSERT_COST_WRONG("添加成本项失败,请稍后尝试", 5004),
    FIND_COST_WRONG("添加成本项失败,请稍后尝试", 5005),
    USER_WRONG("用户不存在", 5006),
    USER_OR_PROJECT_WRONG("请确认培训人", 5007),
    COST_NAME_NULL("请填写成本项之后提交", 5008),
    SING_IN("签到失败", 5009),
    REMIND_WRONG("提醒失败", 5010),
    REMIND_REPEAT("已经反馈过了,无需提醒", 5010),
    REMIND_USER("已经反馈过了 ", 5011),
    FEEDBACK_NUM("需要传入反馈编号", 5012),
    WRONG_NUM("请输入纯数字", 5013),
    FEED_WRONG("请确认项目或者课程", 5014),
    NOT_ALLOW_SUBMIT_AGAIN("你已经审核过这个计划了,不能重复提交", 4001),
    /**
     * 您还没有待审批的计划哦,请稍后再试
     */
    NOT_HAVE_TRAIN_PAIN_EXAMINE("您还没有待审批的计划哦，请稍后再试", 4002),
    /**
     * 您没有权限，请登录后再进行操作
     */
    WRONG_TOKEN("您没有权限，请登录后再进行操作", 4003),
    /**
     * 您已经收藏过了，请不要重复提交
     */
    DONT_SUBMIT_AGAIN("您已经收藏过了，请不要重复提交", 4004),
    /**
     * 不是一个有效的邮箱
     */
    NOT_TRUE_EMAIL("不是一个有效的邮箱", 4005),
    /**
     * 不是一个有效的手机号
     */
    NOT_TRUE_PHONE("不是一个有效的手机号", 4006),
    /**
     * 文件不存在，或上传失败，请重试
     */
    FILE_NOT_EXIT("文件不存在，或上传失败，请重试", 4007),

    ERORR_SIGUP("请不要重复报名", 5000),
    ERORR_PWD("老密码输入错误", 50001),
    NO_REPEDPWD("两次密码输入不一致", 50002),
    ERORR_LOGIN("此用户无登录信息", 50003),
    /**
     * 登录已过期，或未登录，请重新登录
     */
    TOKEN_FAILDE("登录已过期，请重新登录",4008),
    ;

    private final String message;
    private final Integer code;

    ExceptionCode(String message, int code) {
        this.message = message;
        this.code = code;
    }

    public String getMessage() {
        return message;
    }

    public Integer getCode() {
        return code;
    }
}
